home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 2002 November / SGI Freeware 2002 November - Disc 3.iso / dist / fw_qt3.idb / usr / freeware / Qt / tutorial / t9 / main.cpp.z / main.cpp
C/C++ Source or Header  |  2002-04-08  |  2KB  |  63 lines

  1. /****************************************************************
  2. **
  3. ** Qt tutorial 9
  4. **
  5. ****************************************************************/
  6.  
  7. #include <qapplication.h>
  8. #include <qpushbutton.h>
  9. #include <qlcdnumber.h>
  10. #include <qfont.h>
  11. #include <qlayout.h>
  12.  
  13. #include "lcdrange.h"
  14. #include "cannon.h"
  15.  
  16.  
  17. class MyWidget: public QWidget
  18. {
  19. public:
  20.     MyWidget( QWidget *parent=0, const char *name=0 );
  21. };
  22.  
  23.  
  24. MyWidget::MyWidget( QWidget *parent, const char *name )
  25.         : QWidget( parent, name )
  26. {
  27.     QPushButton *quit = new QPushButton( "&Quit", this, "quit" );
  28.     quit->setFont( QFont( "Times", 18, QFont::Bold ) );
  29.  
  30.     connect( quit, SIGNAL(clicked()), qApp, SLOT(quit()) );
  31.  
  32.     LCDRange *angle = new LCDRange( this, "angle" );
  33.     angle->setRange( 5, 70 );
  34.  
  35.     CannonField *cannonField = new CannonField( this, "cannonField" );
  36.  
  37.     connect( angle, SIGNAL(valueChanged(int)),
  38.          cannonField, SLOT(setAngle(int)) );
  39.     connect( cannonField, SIGNAL(angleChanged(int)),
  40.          angle, SLOT(setValue(int)) );
  41.  
  42.     QGridLayout *grid = new QGridLayout( this, 2, 2, 10 );
  43.     grid->addWidget( quit, 0, 0 );
  44.     grid->addWidget( angle, 1, 0, Qt::AlignTop );
  45.     grid->addWidget( cannonField, 1, 1 );
  46.     grid->setColStretch( 1, 10 );
  47.  
  48.     angle->setValue( 60 );
  49.     angle->setFocus();
  50. }
  51.  
  52. int main( int argc, char **argv )
  53. {
  54.     QApplication::setColorSpec( QApplication::CustomColor );
  55.     QApplication a( argc, argv );
  56.  
  57.     MyWidget w;
  58.     w.setGeometry( 100, 100, 500, 355 );
  59.     a.setMainWidget( &w );
  60.     w.show();
  61.     return a.exec();
  62. }
  63.